var task_config = {

};

$('#time-clock').hide();

function time_clock(){
    var num = 10;

    $('#time-clock').show();

    a = setInterval(function(){
        $('#time-clock').text(num);
        
        num -= 1;

        if(num == -1){
            clearInterval(a);
            $('#time-clock').hide();
        }
    },1000);
}

// 展示配件视频
function showAccessories(product,accessor){
    $.ajax({
        url: '/showAccessories',
        type: 'POST',
        data: {
            'product': product,
            'accessor': accessor
        },
        success: function(response) {
            
        }
    });
}

// 开始播放音频
function startPlayAudio() {
    if(get_current_task()['current_device'] == ''){
        return alert('请选择设备');
    }

    $.ajax({
        url: '/startPlayAudio',
        type: 'POST',
        data: {
            'scene_idx':get_current_task()['scene_name']
        },
        success: function(response) {
            $('#startPlayAudio').text('正在播放' + get_current_task()['current_product'] + '的音频...');

            get_current_task()['startPlayAudio'] = true;
        }
    });
}

// 进入真人插话模式
function startInsertMode(){
    $.ajax({
        url: '/startInsertMode',
        type: 'POST',
        data: {
            'scene_idx':get_current_task()['scene_name']
        },
        success: function(response) {
            $('#startInsertMode').text('插话模式运行中...');

            get_current_task()['startInsertMode'] = true;
        }
    });
}

// 停止直播
function stopPlayAudio() {
    $.ajax({
        url: '/stopPlayAudio',
        type: 'POST',
        data: {
            scene_idx:get_current_task()['scene_name']
        },
        success: function(response) {
            $('#startPlayAudio').text('开始播放音频');

            get_current_task()['startPlayAudio'] = false;
        }
    });
}

// 开始获取音频
function startGetAudio(){
    const ip_address = $('#ip_address').val();

    if(!ip_address){
        return alert('ip_address不能为空');
    }

    $.ajax({
        url: '/startGetAudio',
        type: 'POST',
        data: {
            scene_idx: get_current_task()['scene_name'],
            ip_address: ip_address
        },
        success: function(response) {
            get_current_task()['startGetAudio'] = true;
            get_current_task()['ip_address'] = ip_address;

            $('#startGetAudio').text('正在获取' + get_current_task()['current_product'] + '音频...');
        }
    });
}

// 清空音频
function clearAudio(){
    $.ajax({
        url: '/clearAudio',
        type: 'POST',
        data: {
            'scene_idx':get_current_task()['scene_name']
        },
        success: function(response) {
            if(response.success){
                $('#clearAudio').text('已清空' + get_current_task()['current_product'] + '的音频');
            }
        }
    });
}

// 切换产品
function selectProduct(){
    if(!$('#productSelect').val()){
        return;
    }

    $.ajax({
        url: '/selectProduct',
        type: 'POST',
        data: {
            scene_idx : get_current_task().scene_name,
            product: $('#productSelect').val()
        },
        success: function(response) {
            if(response.success){
                get_current_task().current_product = $('#productSelect').val();

                // 切换回复列表
                // getReplySents();
            }
        }
    });
}

// 切换音色
function selectStreamer(){
    if(!$('#streamerSelect').val()){
        return;
    }

    $.ajax({
        url: '/selectStreamer',
        type: 'POST',
        data: {
            scene_idx : get_current_task().scene_name,
            streamer: $('#streamerSelect').val()
        },
        success: function(response) {
            if(response.success){
                get_current_task().current_streamer = $('#streamerSelect').val();

                // 切换回复列表
                // getReplySents();

                $('#ip_address').val(response.ip_address);
            }
        }
    });
}

// 切换平台
function selectLivePlatform(){
    if(!$('#livePlatformSelect').val()){
        return alert('请选择一下开播平台');
    }

    $.ajax({
        url: '/selectLivePlatform',
        type: 'POST',
        data: {
            scene_idx : get_current_task().scene_name,
            live_platform: $('#livePlatformSelect').val()
        },
        success: function(response) {
            if(response.success){
                get_current_task().live_platform = $('#livePlatformSelect').val();
            }
        }
    });
}

// 切换设备
function selectDevice(){
    if(!$('#deviceSelect').val()){
        return;
    }

    $.ajax({
        url: '/selectDevice',
        type: 'POST',
        data: {
            scene_idx : get_current_task().scene_name,
            device: $('#deviceSelect').val()
        },
        success: function(response) {
            if(response.success){
                get_current_task().current_device = $('#deviceSelect').val();
            }
        }
    });
}

// 音量调整
function selectVolumeAdjust(){
    $.ajax({
        url: '/selectVolumeAdjust',
        type: 'POST',
        data: {
            scene_idx : get_current_task().scene_name,
            volume_adjust: $('#volumeAdjustSelect').val()
        },
        success: function(response) {
            if(response.success){
                get_current_task().volume_adjust = $('#volumeAdjustSelect').val();
            }
        }
    });
}

// 选择场景
function selectScene(scene_idx){
    $.ajax({
        url: '/selectScene',
        type: 'POST',
        data: {
            scene_idx : get_current_task().scene_name
        },
        success: function(response) {
            if(response.success){
                
            }
        }
    });
}

function get_current_task(){
    var current_task = {}

    for(var k in task_config){
        if(task_config[k]['active']){
            current_task = task_config[k];
        }
    }

    return current_task;
}

// 在这里更新各种组件信息
function update_task_config(task_config){
    current_task = get_current_task();

    if(current_task.startPlayAudio){
        $('#startPlayAudio').text('正在播放' + current_task.current_product + '的音频...');
    } else {
        $('#startPlayAudio').text('开始播放音频');
    }
        
    if(current_task.pausePlayAudio){
        $('#pausePlayAudio').text('恢复直播');
    } else {
        $('#pausePlayAudio').text('暂停直播');
    }

    if(current_task.startInsertMode){
        $('#startInsertMode').text('插话模式运行中...');
    } else {
        $('#startInsertMode').text('进入真人插话模式');
    }

    // 更新音色
    $('#streamerSelect').val(current_task.current_streamer);

    // 更新产品
    $('#productSelect').val(current_task.current_product);

    // 更新设备
    $('#deviceSelect').val(current_task.current_device);

    // 更新平台
    $('#livePlatformSelect').val(current_task.live_platform);

    // 音量调整
    $('#volumeAdjustSelect').val(current_task.volume_adjust);

    $('#ip_address').val(current_task.ip_address);
}

// 查询音频库存
function getAudioCount(){
    $.ajax({
        url: '/getAudioCount',
        type: 'POST',
        data: {
            scene_idx : get_current_task().scene_name
        },
        success: function(response) {
            if(response.count > -1){
                $('#startGenAudio').text($('#startGenAudio').text().replace(/（\d+）/g,'') + '（' + response.count + '）');
                $('#startPlayAudio').text($('#startPlayAudio').text().replace(/（\d+）/g,'') + '（' + response.count + '）');
            }
        }
    });
}

// 查询是否正在播放音频
function audioPlayingChecking(){
    $.ajax({
        url: '/audioPlayingChecking',
        type: 'POST',
        data: {
            scene_idx : get_current_task().scene_name
        },
        success: function(response) {
            if(response.audioPlaying){
                $('#AudioPlayingGif').show();
            } else {
                $('#AudioPlayingGif').hide();
            }

            if(response.humanSpeaking){
                $('#humanSpeakingGif').show();
            } else {
                $('#humanSpeakingGif').hide();
            }
        }
    });
}

// 查询是否暂停播放
// function pausePlayingChecking(){
//     $.ajax({
//         url: '/pausePlayingChecking',
//         type: 'POST',
//         data: {
//             scene_idx : get_current_task().scene_name
//         },
//         success: function(response) {
//             if(response.flag){
//                 $('#pausePlaying').show();
//             } else {
//                 $('#pausePlaying').hide();
//             }
//         }
//     });
// }

$(document).ready(function(){
    $.ajax({
        url: '/update_task_config',
        type: 'POST',
        data: {

        },
        success: function(response) {
            task_config = response;

            update_task_config(task_config);
        }
    });
    
    // 切换tab
    $('#myTab .nav-link').click(function(e) {
        $('#myTab .nav-link').removeClass('active');

        $(this).addClass('active');

        for(var k in task_config){
            task_config[k]['active'] = false;
        }

        current_scene_idx = $(this).attr('aria-controls');

        task_config[current_scene_idx]['active'] = true;

        update_task_config(task_config);
    });

    setInterval(function(){
        getAudioCount();

        // 查询是否正在播放音频
        audioPlayingChecking();
    },500);
});
